1. Field of the Invention
This invention relates generally to satellite positioning systems (“SPS”) devices, and in particular to ionospheric error predication and correction in an SPS.
2. Related Art
Satellite positioning systems (“SPS”) are satellite-based navigation systems. Examples of SPS include but are not limited to the United States (“U.S.”) Navy Navigation Satellite System (“NNSS”) (also know as TRANSIT), LORAN, Shoran, Decca, TACAN, the Joint Program Office (“JPO”) Global Positioning System (“GPS”) (also known as NAVSTAR, which was developed by the U.S. Department of Defense (“DoD”) in the early 1970s), the Russian counterpart known as Global Navigation Satellite System (“GLONASS”) and any future Western European SPS such the proposed “Galileo” program. The NAVSTAR GPS (henceforth referred to simply as “GPS”) was originally developed as a military system to fulfill the needs of the U.S. military; however, the U.S. Congress later directed DoD to also promote GPS's civilian uses. As a result, GPS is now a dual-use system that may be accessed by both U.S. government agencies (such as the military) and civilians. The GPS system is described in GPS Theory and Practice, Fifth ed., revised edition by Hofiann-Wellenhof, Lichtenegger and Collins, Springer-Verlag Wien NewYork, 2001, which is fully incorporated herein by reference.
Typically, the utilization of SPS includes identifying precise locations on the Earth and synchronizing telecommunication networks such as military communication networks and the code division multiple access (“CDMA”) cellular telephone networks. Additionally, with the advent of the U.S. Congress' mandate, through the Federal Communications Commission (“FCC”), for a cellular telephone network that is capable of providing cellular telephone user's location within 50 feet in emergency situations (known as Enhanced 911service or “E911”), SPS will be employed for both location determination and synchronization in many cellular applications.
In general, the array of GPS satellites transmit highly accurate, time coded information that permits a GPS receiver to calculate its location in terms of latitude and longitude on Earth as well as the altitude above sea level. GPS is designed to provide a base navigation system with accuracy within approximately 100 meters for non-military users and even greater precision for the military and other authorized users (with Selective Availability set to ON).
The space segment of GPS is a constellation of satellites orbiting above the earth that contain transmitters, which send highly accurate timing information to GPS receivers on earth. At present, the implemented GPS constellation includes 21 main operational satellites plus three active spare satellites. These satellites are arranged in six orbits, each orbit containing three or four satellites. The orbital planes form a 55° angle with the equator. The satellites orbit at a height of approximately 10,898 nautical miles (20,200 kilometers) above the Earth with orbital periods for each satellite of approximately 12 hours.
Generally, each of the orbiting satellites contains four highly accurate atomic clocks (two rubidium and two cesium). These atomic clocks provide precision timing pulses used to generate a unique binary code (also known as a pseudorandom “PRN-code” or pseudo noise “PN-code”) that is transmitted to Earth. The PRN-code identifies the specific satellite in the constellation. The satellite also transmits a set of digitally coded ephemeris data (also known as “ephemerides”) that defines the precise orbit of the satellite. The ephemeris data indicates where the satellite is at any given time, and its location may be specified in terms of the satellite ground track in precise latitude and longitude measurements. The information in the ephemeris data is coded and transmitted from the satellite providing an accurate indication of the position of the satellite above the Earth at any given time. Typically, a ground control station updates the ephemeris data of the satellite once per day to ensure accuracy.
More specifically, each GPS satellite transmits a microwave radio signal presently composed of two carrier frequencies modulated by two digital codes and a navigation message. The two carrier frequencies are generated from a highly accurate fundamental L-band frequency of 10.23 MHz produced by the four atomic clocks. The two carrier frequencies, known as L1 and L2, are coherently derived from the fundamental frequency by multiplying the fundamental frequency by 154 and 120 to produce L1 at 1575.42 MHz and L2 at 1227.60 MHz, respectively. These dual frequencies are utilized to eliminate some of the major sources of error.
The pseudoranges that are derived from measured travel times of the signal from each satellite to the receiver use two PRN-codes that are modulated onto the two base carriers. The first code is the Coarse/Acquisition code (“C/A-code” also known as the “Standard Positioning Service”) that is available for civilian use. The C/A-code has an effective wavelength of approximately 300 meters. Presently, the C/A-code is modulated only on L1 and is purposely omitted from L2. This omission allows DoD to control the information broadcast by the satellite and, thus, denies full system accuracy to non-authorized users. The second code is the Precision code (“P-code” also known as the “Precise Positioning Service”) that has been reserved for the U.S. military and other authorized users and has an effective wavelength of approximately 30 meters. The P-code is modulated on both the L1 and L2 carriers.
In addition to the PRN-codes, a data message is modulated onto both carriers that include status information, satellite clock bias, and satellite ephemerides. It is appreciated by those skilled in the art that the U.S. intents to improve the above described signal structures in the future.
As an additional security precaution, DoD has included a number of techniques for denying non-authorized users full access to GPS. These techniques include Selective Availability (“SA”), Anti-spoofing (“A-S”) and Selective Denial (“SD”). The goal of SA was to deny navigation accuracy to potential adversaries by dithering the satellite clock and manipulating the ephemerides. However, due to the appearance of new techniques to compensate for SA errors such as differential techniques, SA was eventually turned OFF on May 2, 2000. A-S has the ability to essentially turn-off the P-code or invoke an encrypted code as a means of denying access to the P-code to all but authorized users. A-S is accomplished by the modulo-2 sum of the P-code and an encrypted W-code. The resulting code is denoted as the Y-code and when A-S is active the P-code on the L1 and L2 carrier is replaced by the unknown Y-code. Future plans for signal structure will include a C/A-code on both the L1 and L2 carriers and the Y-code will be replaced with a new military split-spectrum signal denoted as the M-code. Finally, SD denies access to the GPS signal to unauthorized users in regions of interest by utilizing ground-based jammers.
FIG. 1 illustrates a diagram 100 of an example implementation of an SPS. In operation, a SPS receiver 102 located on the Earth 104 is designed to pick up signals 106, 108, 110 and 112 from several SPS satellites 114, 116, 118 and 120 simultaneously. The SPS receiver 102 decodes the information and, utilizing the time and ephemeris data, calculates the position of the SPS receiver 102 on the Earth 104. The SPS receiver 102 usually includes a floating-point processor (not shown) that performs the necessary calculations and may output a decimal display of latitude and longitude as well as altitude on a handset (not shown). Generally, signals 106, 108 and 110 from at least three satellites 114, 116 and 118 are needed for latitude and longitude information. A fourth satellite 120 signal 112 is needed to compute altitude.
Unfortunately, SPS includes several types of errors that typically degrade the performance of the SPS receiver. These errors include random errors and systematic errors that may originate at the satellites, the SPS receiver or be the result of signal propagation errors. The errors originating at the satellites include ephemeris, orbital, satellite clock, and in the case of GPS, the systematic error caused by the SA, S-A and/or SD selections. The errors originating at the receiver include; receiver clock errors, multipath error, receiver noise, and antenna phase center variations. Generally, multipath error correction methods are well known and have been implemented in some GPS chip set architectures.
The signal propagation errors are the result of atmospheric refraction that includes delays of the SPS signal as it passes through the ionospheric and tropospheric layers of the atmosphere. In general, the ionosphere is a dispersive medium, which lies between seventy and one thousand kilometers above the Earth's surface. The ionosphere is at the upper part of the atmosphere where the ultraviolet and X-ray radiation from the sun interacts with the gas molecules and atoms of the atmosphere to produce gas ionization. The gas ionization results in a large number of free negatively charged electrons and positively charged atoms and molecules. As a result, the electron density within the ionosphere is not constant and changes with altitude and time as a result of the sun's radiation and the Earth's magnetic field.
As such, the ionosphere bends SPS radio signals and changes their propagation speed as they passes through the ionosphere. Bending is known to typically cause negligible range errors (particularly if the satellite elevation angle is greater than 5 degrees); however, the change in propagation speed is known to cause significant range errors because the ionosphere speeds up the propagation of the carrier phase beyond the speed of light while slowing down the PRN-code by the same amount. The ionospheric delay is proportional to the number of free electrons along the SPS signal path and is known as the Total Electron Content (“TEC”). TEC depends on a number of factors including the time of day, the time of year, the 11-year solar cycle and geographic location of the SPS receiver relative to the SPS satellite. Additionally, the ionosphere causes a delay that is frequency dependent such that the lower the frequency, the greater the delay. Thus, the L2 delay is greater than the L1 delay. As an example, the ionospheric delay of a transmitted SPS signal may cause an error of approximately ten meters when calculating the position of the SPS receiver.
As a result, numerous techniques have been developed to minimize many of these errors including the technique known as Differential Global Position Systems (“DGPS”). DGPS is a technique of differencing signals from two or more SPS receivers to improve the accuracy of the signal. Typically, DGPS involves at least two SPS receivers. One SPS receiver is usually mobile (i.e., a “mobile GPS receiver”) and another SPS receiver is stationary. The stationary SPS receiver is usually known as a “GPS server” and is typically located at a reference site that has known coordinates. If the GPS server and mobile GPS receiver are located within an acceptable proximity of each other, the GPS server and mobile GPS receiver will receive the GPS satellite signals simultaneously. Therefore, most of the errors in the GPS satellite signals will be received equally by both the GPS server and mobile GPS receiver. The GPS server then calculates any needed error corrections by comparing the difference between its calculated coordinates from the received GPS satellite signal and its known coordinates. These calculated error corrections are transmitted to the mobile GPS receiver, which may then compensate for the received errors in its received GPS satellite signal.
Unfortunately, DGPS is not always available and even when it is it may still take a relatively long time to determine an acceptable position accuracy at the mobile SPS receiver because the mobile SPS receiver needs to receive the differential data from the SPS server. However, this differential data is only the error information observed at the SPS server not the mobile SPS receiver. As the distance between the mobile SPS receiver and SPS server increases, the error information observed at the SPS server becomes less useful.
Additionally, now that SA has been turned off by DoD, ionospheric and multipath errors have become the most prominent errors. Therefore, the need for routinely communicating between the mobile SPS receiver and SPS server to compensate for SA is no longer present. Unfortunately, conventional DGPS schemes continue to perform numerous costly communications between the mobile SPS receiver and SPS server. Moreover, when the communication link is unstable (such as in a wireless system) or unavailable the benefits of DGPS drop of significantly.
Besides DGPS, another approach to correct for ionospheric errors includes using models of the ionosphere to predict the ionospheric errors. The model approach is most often utilized in non-DGPS standalone GPS applications. The Klobuchar model (also known as the TEC model) is probably the most commonly utilized ionospheric model because the model is broadcast in GPS navigation messages from the GPS satellite and is described in the Global Positioning System, Interface Control Document, ICD-GPS-200, Revision C, Initial Release, Oct. 10, 1993, which is fully incorporated herein by reference. According to ICD-GPS-200, for the L1 frequency, the ionospheric error may be modeled as a shell (also known as a “half-cosine” curve) that is described by the following physical relationship
      T    iono    =      {                                                                                        F                  ×                                      [                                          DC                      +                                                                        A                          ⁢                          cos                                                ⁡                                                  (                                                                                    2                              ⁢                                                              π                                ⁡                                                                  (                                                                      t                                    -                                    ψ                                                                    )                                                                                                                      P                                                    )                                                                                      ]                                                  ,                                                                    if                ⁢                                                                  |                x                |                                  <                                      π                    2                                                                                                                                            F                  ×                                      (                    DC                    )                                                  ,                                                                    if                ⁢                                                                  |                x                |                                  ≧                                      π                    2                                                                                      ⁢        where        ⁢                                  ⁢        x            =              2        ⁢                              π            ⁡                          (                              t                -                ψ                            )                                /          P                ⁢                                  ⁢        and        ⁢                                  ⁢                  T          iono                    (also known as Tzenith) has the units of seconds and is the error on the zenith direction caused by the ionosphere. FIG. 2 illustrates an example graph 200 of Tzenith 202 in nanoseconds versus local time 204 in hours. F is a scaling factor of the ionospheric delay that is typically known as the “obliquity factor,” which is defined as F=1.0+16.00×(0.53−E)3, where E is the “elevation angle” between a GPS receiver and a GPS satellite. FIG. 3 illustrates an example graph 300 of F 302 versus elevation angle 304 in degrees.
The second part of the Tiono formula represents the error effect caused by the change to the TEC. Here
  A  =      {                                                                      ∑                                  n                  =                  0                                3                            ⁢                                                          ⁢                                                α                  n                                ⁢                                  ϕ                  m                  n                                                      ,                                                              if              ⁢                                                          ⁢              A                        ≦            0                                                            0            ,                                                              if              ⁢                                                          ⁢              A                        <            0                              seconds and
  P  =      {                                                                      ∑                                  n                  =                  0                                3                            ⁢                                                          ⁢                                                β                  n                                ⁢                                  ϕ                  m                  n                                                      ,                                                              if              ⁢                                                          ⁢              P                        ≧                          72,000                                                                        72,000,                                                              if              ⁢                                                          ⁢              P                        <                          72,000                                          seconds where DC=5.0×10−9 seconds, σ=50,400 seconds and αn and βn are the satellite transmitted data words with n=0, 1, 2 and 3, which are defined by reference paragraph 20.3.3.5.1.9 (“Ionospheric Data”) described in the ICD-GPS-200. Reference paragraph 20.3.3.5.1.9 defines parameters that allow the L1 only, or L2 only, user to utilize the ionospheric model (reference paragraph 20.3.3.5.2.5) for computation of the ionospheric delay and are contained in page 18 of subframe 4. The bit lengths, scale factors, ranges and units of these parameters are given in Table 20-X of the ICD-GPS-200.
Unfortunately, the TEC model described in ICD-GPS-200 still results in significant ionospheric errors because ICD-GPS-200 treats both DC and σ as constant values while the actual TEC values of the ionosphere is difficult to model. According to ICD-GPS-200 model, DC has a constant value of 5 nanoseconds though it is known to vary from location to location and the phase term σ has a constant value of 14 hours (i.e., 50,400 seconds) although it is also known to vary from 11 to 17 hours for a certain season, location and condition of solar activity. As a result, the ICD-GPS-200 model is known to correct for no more than about 50% of the ionospheric transmission delays.
Thus, there is a need in the art for a way to predict and compensate for the ionospheric errors in SPS.